//表格的配置项
var columns = [
    {
        field: 'index',
        title: '序号',
        align:"center",
        formatter:function(value, row, index){
            return index+1;
        }
    },{
        field: 'loginName',
        align:"center",
        title: '成员名称'
    },{
        field: 'sex',
        title: '性别',
        align:"center",
        formatter: function (value, row, index) {
             return pubForm.getSex(row.sex);
        }
    },{
        field: 'tel',
        align:"center",
        title: '电话号码'
    },{
        field: 'cityName',
        align:"center",
        title: '所属城市'
    },{
        field: 'operator',
        title: '操作',
        align:"center",
        formatter: function (value, row, index) {
            var html='';
            html += '<button class="btn btn-warning btn-icon-anim btn-circle" style="width: 20px;height: 20px;margin-left: 10px;" onclick=\'roleOperation.delRoleUser("'+row.id+'")\' title="删除">' +
                '<i class="fa fa-minus"></i></button>';
            return html;
        }
    }];

//角色配置页面
var roleOperation={
    roleOperationInit:function(){
        $('#tableRoleList').bootstrapTable({
            url:application.contextPath+'/role/queryUserListByRoleId',//调用url
            method: 'get',                     //发送请求类型
            cache: false,                      //是否使用缓存，默认为true
            clickToSelect: true,               //默认false不响应，设为true则当点击此行的某处时，会自动选中此行的checkbox（复选框）或radiobox（单选按钮）
            uniqueId: "id",                    //每一行的唯一标识，一般为主键列
            checkboxHeader: false,				//设置 false 将在列头隐藏全选复选框,默认true
            selectItemName: "id",				//radio 或者 checkbox 的字段 name 名
            pagination: true,					//设置是否分页
            sidePagination: "server",			//设置在哪里进行分页，可选值为 'client' 或者 'server'。设置 'server'时，必须设置服务器数据地址（url）或者重写ajax方法
            pageNumber: 1,						//如果设置了分页，首页页码。
            pageSize: 5,						//如果设置了分页，页面数据条数。
            pageList: [5,10],				   //如果设置了分页，设置可供选择的页面数据条数。设置为 All 或者 Unlimited，则显示所有记录。
            columns: columns,					//列配置项
            toolbar:'#toolbarOp',
            queryParams : function (params) {
                //这里的键的名字和控制器的变量名必须一直，这边改动，控制器也需要改成一样的
                var temp = {
                    size: params.limit,                         //页面大小
                    page: (params.offset / params.limit) + 1,   //页码
                    "roleId":ps.roleId,
                };
                return temp;
            },
            onLoadSuccess: function(res){  //加载成功时执行
                if(!res.isSuccess){
                    layer.open({
                        title:"加载失败!",
                        content:'页面加载失败!'
                    });
                }else {
                    $("#tableRoleList").bootstrapTable("load",res.data)//加载成功时添加数据
                }
            },
            onLoadError: function(res){  //请求没有发送到后台时错误
                layer.open({
                    title:"加载失败!",
                    content:'请求加载失败!'
                });
            },
        })
    },
    showAddMemberPage:function () {
        $.ajax({
            url:application.contextPath+"/role/showAddRoleMemberPage?roleId="+ps.roleId,
            success:function(res){
                layer.open({
                    type:1,
                    title:'新增角色成员',
                    content:res,
                    maxmin:true,//最大，最小开关
                    shade:0.5,//遮盖层模糊度
                    anim:1,//打开跟关闭动画
                    scrollbar:true,//是否设置滚轮
                    area:["1080px","510px"]
                })
          }
        })

    },
    refreshTabel:function () {
        $("#tableRoleList").bootstrapTable('refresh');
    },
    queryRoleByName:function () {
        var opt={
            url:application.contextPath+"/role/queryUserBySelectUserName",
            query:{size:5,page:1,sel:$("#selectText").val(),"roleId":ps.roleId},
            silent:true
        };
        $('#tableRoleList').bootstrapTable('refresh',opt);
        $("#selectText").val("");
    },
    delRoleUser:function (userId) {
        layer.confirm('确定要删除嘛?', {icon: 7, title:'删除提示',btn:['是','否'],
            yes:function(index, layero){
                $.post(
                    application.contextPath+"/role/delRoleUserById",
                    {userId:userId,roleId:ps.roleId},
                    function (res) {
                        if("1"==res.data){
                            var opt={
                                url:application.contextPath+"/role/queryUserListByRoleId",
                                query:{size:5,page:1,"roleId":ps.roleId,},
                                silent:true
                            }
                            $('#tableRoleList').bootstrapTable('refresh',opt);
                            layer.msg('删除成功',{icon:1})
                        }
                    }
                )
            },function(){
                layer.close(layer.index);
            }});
    }
};

//菜单树的配置项
var setting={
    view: {
        selectedMulti: false, //是否选择多个节点 默认true
        showLine:true   //是否展示连线
    },
    check:{
        enable:true,//是否显示checkbox
        chkStyle: "checkbox",
        chkboxType: { "Y": "p", "N": "s" }
    },
    data: {
        keep: {
            parent:true,   //父节点
            leaf:true      //子节点是否锁定
        },
        simpleData: {
            enable: true,
            idKey : "id", //id
            pIdKey : "pid", //父节点的id :pid的名称 ,默认 Pid
            rootPId : "0" //根节点为空表示最高节点
        }
    },
};

var meneOption={
    //树的初始化
    roleOperationMenuInit:function () {
        pubTree.getTreeObj("/role/queryMenuByRoleId","#treeRoleList",ps.roleId);
    },
    addCommitRoleMenu:function () {
        var treeObj = $.fn.zTree.getZTreeObj("treeRoleList");
        var nodes = treeObj.getCheckedNodes(true);
        $.ajax({
            url:application.contextPath+"/role/addRoleMenu",
            type:"POST",
            contentType: "application/json; charset=utf-8",
            dataType:"json",
            data:JSON.stringify({
                parmsList:nodes,
                roleId:ps.roleId
            }),
            success:function (res) {
                layer.msg("角色成功添加菜单管理",{icon:1});
            }
        });
        return false;
    }
};

$(document).ready(function(){
    roleOperation.roleOperationInit();
    meneOption.roleOperationMenuInit();
});
